A system may access a host PC (Personal Computer) in the Intranet from a client terminal in an external network. In this system, in case of communicating between the client terminal and the host PC, a firewall often exists between the client terminal and the host PC. In order to pass a communication packet through the firewall, a protocol of the communication packet is converted to a protocol permitted to pass the firewall such as HTTP (Hypertext Transfer Protocol), and the communication packet is sent. Then a proxy server in the Intranet reconverts the protocol of the communication packet to a protocol directed to the host PC. This technique is disclosed in JP-A (Kokai) No. 2004-005427 (Hereinafter, a reference 1).
On the other hand, a server in the Intranet (inside the firewall) may connect to the client terminal in the external network. For example, an intermediary server is set to intermediate (relay) communication between a client program and a server program, and the intermediary server and the client terminal respectively prepare a table to store pass information representing data-transmission destination. In case of starting communication, a path from the client terminal to the server is specified by tracing the path information from the client terminal in order. Thus a communication from the client terminal to the server is established. This technique is disclosed in JP-A (Kokai) No. 2001-251367 (Hereinafter, a reference 2).
In the reference 1, a packet from the client terminal can be input to an internal network (Intranet). However, management processing of connection to the host PC in the internal network is not taken into consideration.
In the reference 2, a communication packet and a reply packet directed to a listen port of the server program must be previously permitted to pass by each firewall. In this case, by increasing services distributed by the server, a number of listen ports necessary to permit passing by each firewall also increases. As a result, security of the entire network falls. Briefly, a method for establishing communication between the client terminal and the server is necessary while the number of packets permitted to pass at each firewall is minimized. However, in the reference 2, such method is not taken into consideration.
In case of Skype (voice communication software applying P2P technique) using connection method of P2P (Peer to Peer) type, in order for a destination PC inside a NAT (Network Address Translation) router to start voice communication, a server called “super node” is selected from a plurality of PCs each installing Skype. The destination PC and a source PC (client terminal) previously create a connection for control with the super node. In case of calling, by notifying the destination PC inside the NAT router of call start using the connection for control, the host PC (destination PC) starts communication to pass through the NAT rooter.
However, in P2P communication technique, it is on the assumption that a unique service is provided. Accordingly, in case that the host PC provides the same service to a plurality of users (client terminals) or that a plurality of host PCs provides the same service to a user (client terminal), a function to share the service is not taken into consideration. Furthermore, in case that a power of the host PC which provides service temporarily turns off, a function to automatically turn on the power to start service supply is not taken into consideration.